<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script src="./js/vue.js"></script>
    <div id='app'>
        <p>原始字符串：{{msg}}</p>
        <p>计算属性反转：{{revMsg}}</p>
       <p>methods方法反转：{{revMsg2()}}</p>
    </div>
    
    <script>
        let app =new Vue({
             el:"#app",
             data:{
                msg:'hello Vue'
             },
             methods: {
                revMsg2:function(){
                    return this.msg.split('').reverse().join('')
                }
             },
             //★计算属性与methods区别
             //计算属性只有当依赖改变才会重新取值，多次使用计算属性，只要依赖不发生改变，就只调用一次，其后操作都是使用缓存实现操作的，
             //methods 调用一次执行一次
             computed:{//计算属性和methods都能实现操作，使用计算属性是基于他的依赖缓存，只有相关依赖改变时才会重新取值，
                revMsg:function(){
                    return this.msg.split('').reverse().join('')
                }
             }
        })
    </script>
</body>
</html>